從第一天的 帳號密碼登入 開始,到最後建立 進階授權策略,這 30 天是一場漫長卻紮實的馬拉松。
我們不僅僅是「會寫 Spring Security 設定檔」,更重要的是:你已經建立了一套完整的 認證與授權安全思維。三十天不長,但跟大家一起走過這三十天,感覺是一個不一樣的體驗。
我總結了這30天我們學會的七個核心觀念:
Authentication(認證):確認使用者是誰(你是否真的持有這張門禁卡?)。
Authorization(授權):決定使用者能做什麼(你能不能進主管辦公室?)。
👉 兩者常被混淆,但其實是安全架構的兩個不同層次。
👉 Spring Security 原生支援這些協定,讓系統能無縫整合外部 Provider。
ROLE_ADMIN
→ 能新增/刪除帳號。ROLE_USER
→ 只能查看自己的資料。department == HR
才能進入人資系統。ownerId == authentication.name
才能查看自己的檔案。read
、write
。scope=read
→ 只能查詢資料。scope=write
→ 能修改/刪除資料。這七個是我自己研究,覺得關於Security重要的七個重要觀念。在開發的時候,我也建議大家遵循著以下的幾點原則:
完成這 30 天,我們已經具備基本設計安全系統的觀念與能力了,恭喜大家!
這 30 天的學習,不只是 API 的程式碼練習,更是一次 安全架構的完整體驗。
我們學會了:
看到這裡,恭喜你,也恭喜我自己完成這場 30 天的學習馬拉松!
安全不是一個單一功能,而是一套完整思維。從今天起,讓我們一起朝著建構 安全、可擴展、符合業界標準的認證與授權系統 的能力前進!